/*                          UX-Framework                               
 *                                                                 
 *  iZE Co.,Ltd. Copyright 2009 All rights reserved.          
 *  This file is distributed under the terms of the GNU Lesser 
 *  General Public License, described in file LICENSE.                                     
 */
package jp.ize.ux.geom;

// {{{ class UXArc
/** 
 * UXArcクラス<br>
 * Arc オブジェクトは、中心のポイント、および幅と高さで定義される長方形の領域です。<br>
 * 
 *
 * @author		iZE Co., Ltd.<br>
 * @version		$Id: UXArc.hx 22 2009-02-05 07:21:58Z yimai.v $<br>
 */
class UXArc
{
	// {{{ public var x(default, default) : Float;
	/**
	 * 円弧の中心のX座標位置を示します。
	 */
	public var x(default, default) : Float;
	// }}}
	// {{{ public var y(default, default) : Float;
	/**
	 * 円弧の中心のY座標位置を示します。
	 */
	public var y(default, default) : Float;
	// }}}	
	// {{{ public var rx(default, default) : Float;
	/**
	 * 円弧のx軸半径を示します。
	 */
	public var rx(default, default) : Float;
	// }}}
	// {{{ public var ry(default, default) : Float;
	/**
	 * 円弧のy軸半径を示します。
	 */
	public var ry(default, default) : Float;
	// }}}
	// {{{ public var startangle(default, default) : Float;
	/**
	 * 円弧の開始角度（0-360）を示します。
	 */
	public var startangle(default, default) : Float;
	// }}}
	// {{{ public var endangle(default, default) : Float;
	/**
	 * 円弧の終了角度（0-360）を示します。
	 */
	public var endangle(default, default) : Float;
	// }}}
	// {{{ public function new ( ?x : Float = 0, ?y : Float = 0, ?r : Float = 0 )
	/**
	 * コンストラクタです。
	 */
	public function new ( ?x : Float = 0, ?y : Float = 0, ?rx : Float = 0, ?ry : Float = 0, ?startangle : Float = 0, ?endangle : Float = 0 )
	{
		this.x = x;
		this.y = y;
		this.rx = rx;
		this.ry = ry;
		this.startangle = startangle;
		this.endangle   = endangle;
	}
	// }}}
	// {{{ public function copy() : UXArc
	/**
	 * 自分自身のコピーインスタンスを返す関数です。
	 */
	public function copy() : UXArc
	{
		return new UXArc(this.x,this.y,this.rx,this.ry,this.startangle,this.endangle);
	}
	// }}}
}
// }}}
